package partThree;
import java.util.Scanner;

/*本类用于测试正则表达式*/
//需求：提示并接收用户输入的身份证号，并将判断结果输出
public class TestRegex {
    public static void main(String[] args) {
        //1.提示并接收用户输入的身份证号
        System.out.println("请输入您的身份证号：");
        String input = new Scanner(System.in).nextLine();

        //2.编辑正则表达式
        //身份证号的规律：一共是18位，前17位是数字，最后一位可能是数字还可能是X
        //String regex = "[0-9]{17}[0-9X]";
        /*单个\在java中有特殊的含义，认为这是一个转义符号
         * 所以如果你想单纯的表示这就是一个\,需要在它的前面加一个用来转义的\
         * 也就是\\*/
        String regex = "\\d{17}[0-9X]";

        //3.判断用户输入的数据是否符合正则表达式
        /*input是我们接收到的数据
         * regex是我们定义的正则表达式，也就是要匹配的规则
         * matches()用来判断input数据是否符合regex定义的规则*/
        if(input.matches(regex)){
            System.out.println("恭喜您！输入正确！");
        }else {
            System.out.println("输入不正确！");
        }

    }
}